<?php
/*
* 正则表达式
 1.定界符号
 2.原子
 3.元字符
 4.模式修正符
 一个URL正则表达式
 $url="/(https|ftps?):\/\/(www|mail|news)\.([^\.\/]+).(com|org|net)/i";
 http://www.baidu.com
 ftp://mail.google.com
 https://news.hello.org
 用在分割的函数中，则使用上面的正则表字符串进行分割
 用在匹配的涵数中，则使用上面的正则表字符串进行匹配
 用在替换的函数中，则使用上面的正则表字符串进行替换
 有了正则，在一个正则处理函数中使用这个正则，则才能对字符串进行分割 、匹配查找及替换等 工作。

 和字符串处理函数对比介绍
 能使用字符串处理函数完成的功能，就不要使用正则表达式处理函数

 1.字符串的匹配和查找
*/


$str="这是一个正则表达式http://www.baidu.com林
这是一个正则表达式http://www.baidu2.com林
这是一个正则表达式http://www.baidu3.com林
这是一个正则表达式http://www.google4.com林
这是一个正则表达式ftp://www.baidu5.com林
这是一个正则表达式ftps://www.baidu6.com林";


function setUrl($str){	
	
	$url="/(https?|ftps?):\/\/(www|mail|news)\.([^\.\/]+)\.(com|org|net)/i";

	$str = preg_replace($url,'<a href="\1://\2.\3.\4">${1}://${2}.${3}.${4}</a>', $str);
	
	
 	return $str;

}



echo setUrl($str);



